Security for packets using a short mac header

ABSTRACT

Certain aspects of the present disclosure provide methods and apparatus for applying security to packets, for example, packets utilizing short MAC headers.

CLAIM OF PRIORITY UNDER 35 U.S.C. §119

The present application for patent is a divisional of U.S. patentapplication Ser. No. 13/840,166, filed Mar. 15, 2013, pending, whichclaims priority to U.S. Provisional Patent Application Ser. No.61/736,513, filed Dec. 12, 2012, which are assigned to the assigneehereof and hereby expressly incorporated herein by reference in itsentirety.

FIELD OF THE INVENTION

Certain aspects of the present disclosure generally relate to wirelesscommunications and, more particularly, to techniques for enablingoverhead for packets using a short MAC header.

RELEVANT BACKGROUND

Wireless communication networks are widely deployed to provide variouscommunication services such as voice, video, packet data, messaging,broadcast, etc. These wireless networks may be multiple-access networkscapable of supporting multiple users by sharing the available networkresources. Examples of such multiple-access networks include CodeDivision Multiple Access (CDMA) networks, Time Division Multiple Access(TDMA) networks, Frequency Division Multiple Access (FDMA) networks,Orthogonal FDMA (OFDMA) networks, and Single-Carrier FDMA (SC-FDMA)networks.

In order to address the desire for greater coverage and increasedcommunication range, various schemes are being developed. One suchscheme is the sub-1-GHz frequency range (e.g., operating in the 902-928MHz range in the United States) being developed by the Institute ofElectrical and Electronics Engineers (IEEE) 802.11ah task force. Thisdevelopment is driven by the desire to utilize a frequency range thathas greater wireless range than other IEEE 802.11 groups and has lowerobstruction losses.

SUMMARY

Certain aspects of the present disclosure provide an apparatus forwireless communications. The apparatus typically includes a processingsystem generally configured to store a portion of a set of informationlocally, at the apparatus, receive a packet, said packet comprising adata field encoded using the set of information, and decode the datafield using the stored portion of the set of information and additionalinformation contained in the packet.

Certain aspects of the present disclosure provide an apparatus forwireless communications. The apparatus typically includes a processingsystem configured to signal, to a receiving entity, a portion of a setof information used to encode a data portion of a packet and transmit,to the receiving entity, a packet with the data field encoded using theset of information, wherein the packet lacks some of the set ofinformation used to encode the data field.

Certain aspects of the present disclosure provide an apparatus forwireless communications. The apparatus typically includes means forstoring a portion of a set of information locally, at the apparatus,means for receiving a packet, said packet comprising a data fieldencoded using the set of information, and means for decoding the datafield using the stored portion of the set of information and additionalinformation contained in the packet.

Certain aspects of the present disclosure provide an apparatus forwireless communications. The apparatus typically includes means forsignaling, to a receiving entity, a portion of a set of information usedto encode a data portion of a packet and means for transmitting, to thereceiving entity, a packet with the data field encoded using the set ofinformation, wherein the packet lacks some of the set of informationused to encode the data field.

Certain aspects of the present disclosure provide a method for wirelesscommunications by an apparatus. The method typically includes storing aportion of a set of information locally, at the apparatus, receiving apacket, said packet comprising a data field encoded using the set ofinformation, and decoding the data field using the stored portion of theset of information and additional information contained in the packet.

Certain aspects of the present disclosure provide a method for wirelesscommunications by an apparatus. The method typically includes signaling,to a receiving entity, a portion of a set of information used to encodea data portion of a packet and transmitting, to the receiving entity, apacket with the data field encoded using the set of information, whereinthe packet lacks some of the set of information used to encode the datafield.

Certain aspects of the present disclosure provide a computer programproduct for wireless communications by an apparatus comprising acomputer-readable medium having instructions stored thereon. Theinstructions are generally executable for storing a portion of a set ofinformation locally, at the apparatus, receiving a packet, said packetcomprising a data field encoded using the set of information, anddecoding the data field using the stored portion of the set ofinformation and additional information contained in the packet.

Certain aspects of the present disclosure provide a computer programproduct for wireless communications by an apparatus comprising acomputer-readable medium having instructions stored thereon. Theinstructions are generally executable for signaling, to a receivingentity, a portion of a set of information used to encode a data portionof a packet and transmitting, to the receiving entity, a packet with thedata field encoded using the set of information, wherein the packetlacks some of the set of information used to encode the data field.

Certain aspects of the present disclosure provide a station for wirelesscommunications. The station typically includes a processing systemgenerally configured to store a portion of a set of information locally,at the station, receive a packet, said packet comprising a data fieldencoded using the set of information, and decode the data field usingthe stored portion of the set of information and additional informationcontained in the packet.

Certain aspects of the present disclosure provide an access point forwireless communications. The access point typically includes aprocessing system configured to signal, to a station, a portion of a setof information used to encode a data portion of a packet and transmit,to the station, a packet with the data field encoded using the set ofinformation, wherein the packet lacks some of the set of informationused to encode the data field.

BRIEF DESCRIPTION OF THE DRAWINGS

So that the manner in which the above-recited features of the presentdisclosure can be understood in detail, a more particular description,briefly summarized above, may be had by reference to aspects, some ofwhich are illustrated in the appended drawings. It is to be noted,however, that the appended drawings illustrate only certain typicalaspects of this disclosure and are therefore not to be consideredlimiting of its scope, for the description may admit to other equallyeffective aspects.

FIG. 1 illustrates a diagram of an example wireless communicationsnetwork, in accordance with certain aspects of the present disclosure.

FIG. 2 illustrates a block diagram of an example access point and userterminals, in accordance with certain aspects of the present disclosure.

FIG. 3 illustrates a block diagram of an example wireless device, inaccordance with certain aspects of the present disclosure.

FIG. 4 illustrates an example packet structure utilizing a short MACheader.

FIG. 5 illustrates a block diagram of example operations for wirelesscommunications by a receiver, in accordance with certain aspects of thepresent disclosure.

FIG. 5A illustrates example means capable of performing the operationsshown in FIG. 5.

FIG. 6 illustrates a block diagram of example operations for wirelesscommunications by a transmitter, in accordance with certain aspects ofthe present disclosure.

FIG. 6A illustrates example means capable of performing the operationsshown in FIG. 6.

FIG. 7 illustrates an example packet structure with a compressed CCMPheader, in accordance with aspects of the present disclosure.

FIG. 7A illustrates an example compressed CCMP header, in accordancewith aspects of the present disclosure.

FIG. 8 illustrates another example packet structure with a compressedCCMP header, in accordance with aspects of the present disclosure.

FIG. 8A illustrates an example compressed CCMP header, in accordancewith aspects of the present disclosure.

FIG. 9 illustrates an example packet structure with no CCMP header, inaccordance with aspects of the present disclosure.

DETAILED DESCRIPTION

Various aspects of the disclosure are described more fully hereinafterwith reference to the accompanying drawings. This disclosure may,however, be embodied in many different forms and should not be construedas limited to any specific structure or function presented throughoutthis disclosure. Rather, these aspects are provided so that thisdisclosure will be thorough and complete, and will fully convey thescope of the disclosure to those skilled in the art. Based on theteachings herein one skilled in the art should appreciate that the scopeof the disclosure is intended to cover any aspect of the disclosuredisclosed herein, whether implemented independently of or combined withany other aspect of the disclosure. For example, an apparatus may beimplemented or a method may be practiced using any number of the aspectsset forth herein. In addition, the scope of the disclosure is intendedto cover such an apparatus or method which is practiced using otherstructure, functionality, or structure and functionality in addition toor other than the various aspects of the disclosure set forth herein. Itshould be understood that any aspect of the disclosure disclosed hereinmay be embodied by one or more elements of a claim.

Although particular aspects are described herein, many variations andpermutations of these aspects fall within the scope of the disclosure.Although some benefits and advantages of the preferred aspects arementioned, the scope of the disclosure is not intended to be limited toparticular benefits, uses, or objectives. Rather, aspects of thedisclosure are intended to be broadly applicable to different wirelesstechnologies, system configurations, networks, and transmissionprotocols, some of which are illustrated by way of example in thefigures and in the following description of the preferred aspects. Thedetailed description and drawings are merely illustrative of thedisclosure rather than limiting, the scope of the disclosure beingdefined by the appended claims and equivalents thereof.

An Example Wireless Communication System

The techniques described herein may be used for various broadbandwireless communication systems, including communication systems that arebased on an orthogonal multiplexing scheme. Examples of suchcommunication systems include Spatial Division Multiple Access (SDMA),Time Division Multiple Access (TDMA), Orthogonal Frequency DivisionMultiple Access (OFDMA) systems, Single-Carrier Frequency DivisionMultiple Access (SC-FDMA) systems, and so forth. An SDMA system mayutilize sufficiently different directions to simultaneously transmitdata belonging to multiple user terminals. A TDMA system may allowmultiple user terminals to share the same frequency channel by dividingthe transmission signal into different time slots, each time slot beingassigned to different user terminal An OFDMA system utilizes orthogonalfrequency division multiplexing (OFDM), which is a modulation techniquethat partitions the overall system bandwidth into multiple orthogonalsub-carriers. These sub-carriers may also be called tones, bins, etc.With OFDM, each sub-carrier may be independently modulated with data. AnSC-FDMA system may utilize interleaved FDMA (IFDMA) to transmit onsub-carriers that are distributed across the system bandwidth, localizedFDMA (LFDMA) to transmit on a block of adjacent sub-carriers, orenhanced FDMA (EFDMA) to transmit on multiple blocks of adjacentsub-carriers. In general, modulation symbols are sent in the frequencydomain with OFDM and in the time domain with SC-FDMA.

The teachings herein may be incorporated into (e.g., implemented withinor performed by) a variety of wired or wireless apparatuses (e.g.,nodes). In some aspects, a wireless node implemented in accordance withthe teachings herein may comprise an access point or an access terminal

An access point (“AP”) may comprise, be implemented as, or known as aNode B, Radio Network Controller (“RNC”), evolved Node B (eNB), BaseStation Controller (“BSC”), Base Transceiver Station (“BTS”), BaseStation (“BS”), Transceiver Function (“TF”), Radio Router, RadioTransceiver, Basic Service Set (“BSS”), Extended Service Set (“ESS”),Radio Base Station (“RBS”), or some other terminology.

An access terminal (“AT”) may comprise, be implemented as, or known as asubscriber station, a subscriber unit, a mobile station (MS), a remotestation, a remote terminal, a user terminal (UT), a user agent, a userdevice, user equipment (UE), a user station, or some other terminology.In some implementations, an access terminal may comprise a cellulartelephone, a cordless telephone, a Session Initiation Protocol (“SIP”)phone, a wireless local loop (“WLL”) station, a personal digitalassistant (“PDA”), a handheld device having wireless connectioncapability, a Station (“STA”), or some other suitable processing deviceconnected to a wireless modem. Accordingly, one or more aspects taughtherein may be incorporated into a phone (e.g., a cellular phone or smartphone), a computer (e.g., a laptop), a tablet, a portable communicationdevice, a portable computing device (e.g., a personal data assistant),an entertainment device (e.g., a music or video device, or a satelliteradio), a global positioning system (GPS) device, or any other suitabledevice that is configured to communicate via a wireless or wired medium.In some aspects, the node is a wireless node. Such wireless node mayprovide, for example, connectivity for or to a network (e.g., a widearea network such as the Internet or a cellular network) via a wired orwireless communication link.

FIG. 1 illustrates a multiple-access multiple-input multiple-output(MIMO) system 100 with access points and user terminals. For simplicity,only one access point 110 is shown in FIG. 1. An access point isgenerally a fixed station that communicates with the user terminals andmay also be referred to as a base station or some other terminology. Auser terminal may be fixed or mobile and may also be referred to as amobile station, a wireless device, or some other terminology. Accesspoint 110 may communicate with one or more user terminals 120 at anygiven moment on the downlink and uplink. The downlink (i.e., forwardlink) is the communication link from the access point to the userterminals, and the uplink (i.e., reverse link) is the communication linkfrom the user terminals to the access point. A user terminal may alsocommunicate peer-to-peer with another user terminal. A system controller130 couples to and provides coordination and control for the accesspoints.

While portions of the following disclosure will describe user terminals120 capable of communicating via Spatial Division Multiple Access(SDMA), for certain aspects, the user terminals 120 may also includesome user terminals that do not support SDMA. Thus, for such aspects, anAP 110 may be configured to communicate with both SDMA and non-SDMA userterminals. This approach may conveniently allow older versions of userterminals (“legacy” stations) to remain deployed in an enterprise,extending their useful lifetime, while allowing newer SDMA userterminals to be introduced as deemed appropriate.

The system 100 employs multiple transmit and multiple receive antennasfor data transmission on the downlink and uplink. The access point 110is equipped with N_(ap) antennas and represents the multiple-input (MI)for downlink transmissions and the multiple-output (MO) for uplinktransmissions. A set of K selected user terminals 120 collectivelyrepresents the multiple-output for downlink transmissions and themultiple-input for uplink transmissions. For pure SDMA, it is desired tohave N_(ap)≧K≧1 if the data symbol streams for the K user terminals arenot multiplexed in code, frequency or time by some means. K may begreater than N_(ap) if the data symbol streams can be multiplexed usingTDMA technique, different code channels with CDMA, disjoint sets ofsubbands with OFDM, and so on. Each selected user terminal transmitsuser-specific data to and/or receives user-specific data from the accesspoint. In general, each selected user terminal may be equipped with oneor multiple antennas (i.e., N_(ut)≧1). The K selected user terminals canhave the same or different number of antennas.

The SDMA system may be a time division duplex (TDD) system or afrequency division duplex (FDD) system. For a TDD system, the downlinkand uplink share the same frequency band. For an FDD system, thedownlink and uplink use different frequency bands. MIMO system 100 mayalso utilize a single carrier or multiple carriers for transmission.Each user terminal may be equipped with a single antenna (e.g., in orderto keep costs down) or multiple antennas (e.g., where the additionalcost can be supported). The system 100 may also be a TDMA system if theuser terminals 120 share the same frequency channel by dividingtransmission/reception into different time slots, each time slot beingassigned to different user terminal 120.

FIG. 2 illustrates a block diagram of access point 110 and two userterminals 120 m and 120 x in MIMO system 100. The access point 110 isequipped with N_(t) antennas 224 a through 224 t. User terminal 120 m isequipped with N_(ut,m) antennas 252 ma through 252 mu, and user terminal120 x is equipped with N_(ut,m) antennas 252 xa through 252 xu. Theaccess point 110 is a transmitting entity for the downlink and areceiving entity for the uplink. Each user terminal 120 is atransmitting entity for the uplink and a receiving entity for thedownlink. As used herein, a “transmitting entity” is an independentlyoperated apparatus or device capable of transmitting data via a wirelesschannel, and a “receiving entity” is an independently operated apparatusor device capable of receiving data via a wireless channel. In thefollowing description, the subscript “dn” denotes the downlink, thesubscript “up” denotes the uplink, N_(up) user terminals are selectedfor simultaneous transmission on the uplink, N_(dn) user terminals areselected for simultaneous transmission on the downlink, N_(up) may ormay not be equal to N_(dn), and N_(up) and N_(dn) may be static valuesor can change for each scheduling interval. The beam-steering or someother spatial processing technique may be used at the access point anduser terminal

On the uplink, at each user terminal 120 selected for uplinktransmission, a transmit (TX) data processor 288 receives traffic datafrom a data source 286 and control data from a controller 280. TX dataprocessor 288 processes (e.g., encodes, interleaves, and modulates) thetraffic data for the user terminal based on the coding and modulationschemes associated with the rate selected for the user terminal andprovides a data symbol stream. A TX spatial processor 290 performsspatial processing on the data symbol stream and provides N_(ut,m)transmit symbol streams for the N_(ut,m) antennas. Each transmitter unit(TMTR) 254 receives and processes (e.g., converts to analog, amplifies,filters, and frequency upconverts) a respective transmit symbol streamto generate an uplink signal. N_(ut,m) transmitter units 254 provideN_(ut,m) uplink signals for transmission from N_(ut,m) antennas 252 tothe access point.

N_(up) user terminals may be scheduled for simultaneous transmission onthe uplink. Each of these user terminals performs spatial processing onits data symbol stream and transmits its set of transmit symbol streamson the uplink to the access point.

At access point 110, N_(ap) antennas 224 a through 224 ap receive theuplink signals from all N_(up) user terminals transmitting on theuplink. Each antenna 224 provides a received signal to a respectivereceiver unit (RCVR) 222. Each receiver unit 222 performs processingcomplementary to that performed by transmitter unit 254 and provides areceived symbol stream. An RX spatial processor 240 performs receiverspatial processing on the N_(ap) received symbol streams from N_(ap)receiver units 222 and provides N_(up) recovered uplink data symbolstreams. The receiver spatial processing is performed in accordance withthe channel correlation matrix inversion (CCMI), minimum mean squareerror (MMSE), soft interference cancellation (SIC), or some othertechnique. Each recovered uplink data symbol stream is an estimate of adata symbol stream transmitted by a respective user terminal. An RX dataprocessor 242 processes (e.g., demodulates, deinterleaves, and decodes)each recovered uplink data symbol stream in accordance with the rateused for that stream to obtain decoded data. The decoded data for eachuser terminal may be provided to a data sink 244 for storage and/or acontroller 230 for further processing.

On the downlink, at access point 110, a TX data processor 210 receivestraffic data from a data source 208 for N_(dn) user terminals scheduledfor downlink transmission, control data from a controller 230, andpossibly other data from a scheduler 234. The various types of data maybe sent on different transport channels. TX data processor 210 processes(e.g., encodes, interleaves, and modulates) the traffic data for eachuser terminal based on the rate selected for that user terminal. TX dataprocessor 210 provides N_(dn) downlink data symbol streams for theN_(dn) user terminals. A TX spatial processor 220 performs spatialprocessing (such as a precoding or beamforming, as described in thepresent disclosure) on the N_(dn) downlink data symbol streams, andprovides N_(ap) transmit symbol streams for the N_(ap) antennas. Eachtransmitter unit 222 receives and processes a respective transmit symbolstream to generate a downlink signal. N_(ap) transmitter units 222providing N_(ap) downlink signals for transmission from N_(ap) antennas224 to the user terminals.

At each user terminal 120, N_(ut,m) antennas 252 receive the N_(ap)downlink signals from access point 110. Each receiver unit 254 processesa received signal from an associated antenna 252 and provides a receivedsymbol stream. An RX spatial processor 260 performs receiver spatialprocessing on N_(ut,m) received symbol streams from N_(ut,m) receiverunits 254 and provides a recovered downlink data symbol stream for theuser terminal. The receiver spatial processing is performed inaccordance with the CCMI, MMSE or some other technique. An RX dataprocessor 270 processes (e.g., demodulates, deinterleaves and decodes)the recovered downlink data symbol stream to obtain decoded data for theuser terminal.

At each user terminal 120, a channel estimator 278 estimates thedownlink channel response and provides downlink channel estimates, whichmay include channel gain estimates, SNR estimates, noise variance and soon. Similarly, a channel estimator 228 estimates the uplink channelresponse and provides uplink channel estimates. Controller 280 for eachuser terminal typically derives the spatial filter matrix for the userterminal based on the downlink channel response matrix H_(dn,m) for thatuser terminal. Controller 230 derives the spatial filter matrix for theaccess point based on the effective uplink channel response matrixH_(up,eff). Controller 280 for each user terminal may send feedbackinformation (e.g., the downlink and/or uplink eigenvectors, eigenvalues,SNR estimates, and so on) to the access point. Controllers 230 and 280also control the operation of various processing units at access point110 and user terminal 120, respectively.

FIG. 3 illustrates various components that may be utilized in a wirelessdevice 302 that may be employed within the MIMO system 100. The wirelessdevice 302 is an example of a device that may be configured to implementthe various methods described herein. The wireless device 302 may be anaccess point 110 or a user terminal 120.

The wireless device 302 may include a processor 304 which controlsoperation of the wireless device 302. The processor 304 may also bereferred to as a central processing unit (CPU). Memory 306, which mayinclude both read-only memory (ROM) and random access memory (RAM),provides instructions and data to the processor 304. A portion of thememory 306 may also include non-volatile random access memory (NVRAM).The processor 304 typically performs logical and arithmetic operationsbased on program instructions stored within the memory 306. Theinstructions in the memory 306 may be executable to implement themethods described herein.

The wireless device 302 may also include a housing 308 that may includea transmitter 310 and a receiver 312 to allow transmission and receptionof data between the wireless device 302 and a remote location. Thetransmitter 310 and receiver 312 may be combined into a transceiver 314.A single or a plurality of transmit antennas 316 may be attached to thehousing 308 and electrically coupled to the transceiver 314. Thewireless device 302 may also include (not shown) multiple transmitters,multiple receivers, and multiple transceivers.

The wireless device 302 may also include a signal detector 318 that maybe used in an effort to detect and quantify the level of signalsreceived by the transceiver 314. The signal detector 318 may detect suchsignals as total energy, energy per subcarrier per symbol, powerspectral density and other signals. The wireless device 302 may alsoinclude a digital signal processor (DSP) 320 for use in processingsignals.

The various components of the wireless device 302 may be coupledtogether by a bus system 322, which may include a power bus, a controlsignal bus, and a status signal bus in addition to a data bus.

Example Security for Packets with Short MAC Headers

The use of packet structures with Short MAC headers (compressed relativeto full MAC headers) has been accepted in certain standards, such asIEEE 802.11ah. The short MAC Header defined in 802.11ah is reduced to 12Bytes from the 34 Bytes of a normal MAC Header. A reduced number of bitsin short MAC headers allows reduction of overhead and is especiallybeneficial for short data packets where overhead accounts for a largerpercentage of overall packet size.

Techniques presented herein provide techniques for reducing overhead forencrypted packets, such as those using short MAC Headers. The techniquespresented herein provide various options to reduce overhead associatedwith per-packet encryption. These techniques may be used separately or,in some cases, combined to achieve greater reductions in overhead.

FIG. 4 illustrates an example of a packet 400 (in the illustratedexample, an MPDU) with a short MAC header 410, but a full CCMP header420. As illustrated, the MAC header 420 which contains the destinationand source address of the data packet and a CCMP header with a packetnumber (PN), an Ext IV, and a key ID. As illustrated, the packet numberis a 48-bit number stored across 6 octets (as illustrated, the PN codesare the first two and last four octets of the CCMP header) and areincremented for each subsequent packet. The Key ID octet contains theExt IV (bit 5), Key ID (bits 6-7), and a reserved subfield (bits 0-4).

This information in the CCMP header is used to encrypt the data unit andthe Message Integrity Code (MIC) which protects the integrity andauthenticity of the packet. The frame check sequence (FCS) which is usedfor error detection and correction is not encrypted.

Techniques presented herein may help reduce the overhead associated withtransmitting a CCMP Header. According to certain aspects, part of theCCMP information (conventionally carried in a full CCMP header) may bestored at the receiver. For example, if the upper 4 bytes of the PN arestored, the CCMP header may be reduced by 4 bytes. In addition, or as analternative, unnecessary (reserved) fields may be removed (1 Byte).Other techniques discussed below may result in further reductions.

FIG. 5 is a block diagram of example operations 500 for wirelesscommunications by a receiving entity, in accordance with aspects of thepresent disclosure. The operations 500 may be performed by an apparatus,such as a station or access point.

At 502, the apparatus store a portion of a Counter Cipher Mode Protocol(CCMP) information locally, at the apparatus. At 504, the apparatusreceives a packet with a MAC header, an indication of a type of the MACheader, and a data field encrypted using the CCMP information. At 506,the apparatus decrypts the data field using the stored portion of theCCMP information and additional information contained in the packet.

FIG. 6 is a block diagram of example operations 600 for wirelesscommunications by a transmitting entity, in accordance with aspects ofthe present disclosure. The operations 600 may be performed by anapparatus, such as a station, or access point.

At 602, the apparatus signals a portion of a Counter Cipher ModeProtocol (CCMP) information to a receiving entity, to be stored at thereceiving entity. At 604, the apparatus transmits a packet with a MACheader, an indication of a type of the MAC header, and a data fieldencrypted using the CCMP information, wherein the packet lacks some ofthe CCMP information used to encrypt the data field.

FIG. 7 illustrates an example packet 700 with a short (compressed) CCMPheader 720, in accordance with aspects of the present disclosure.

As illustrated it is possible to perform CCMP Header Compression bydefining a Base PN (in the illustrated example, BPN=PN2|PN3|PN4|PN5).The BPN may be stored at the receiving entity and may be obtainedthrough Management frame exchange. According to certain aspects, aremaining portion of the CCMP Header may be sent with the packet (e.g.,with least significant bits of the PN sent and the Key ID, PN0|PN1|KeyID). This may be referred to as Packet PN (PPN).

From this information, along with the stored information, the Full CCMPheader information can be reconstructed at the receiver. For example,the full PN may be reconstructed from the (transmitted) PPN and (stored)BPN as: PN=Concatenate PPN|BPN. The BPN may need to be updated uponPNO|PN1 rollover. A 16 bit-based rollover is expected to be very low for802.11ah applications and may be detected at the receiver (and the BPNupdated accordingly).

As shown in FIG. 7A, using this approach, a CCMP Header reduced from 8Octets to 3 Octets as only PN0|PN1|Key ID Octets need to be transmittedalong with the packet.

FIG. 8 illustrates an example packet 800 with another example of a shortCCMP header 820, in accordance with aspects of the present disclosure.

As illustrated, it is possible to perform even more efficient CCMPHeader Compression. This further compression may be possible, forexample, by allowing a transmitted Sequence Control (SC) number (in theMAC header) to act as PN0|PN1. In other words, PN0|PN1=SC (=SequenceNumber (SN)|Fragment Number (FN)). In some cases, the Packet Numberincreases with steps of 16 when the MSDU is not fragmented. As a result,the PN may be effectively reduced by 4 bits.

As illustrated in FIG. 8A, this approach may result in a CCMP Headerthat is reduced to only 1 Octet, as only the Key ID Octet needs to betransmitted with the packet.

As illustrated in FIG. 9, it may even be possible to send a packet withno CCMP Header at all (as indicated by an empty CCMP header 920). Thisfurther compression may be possible by removing the Key ID octet. Thismay be possible because the value of Ext IV (included in the Key IDoctet) is always 1 for CCMP. Further, because re-keying may never happenfor unicast traffic and group traffic does not use short MAC headers,the Key ID may be omitted as well. As a result, the CCMP Header isbasically eliminated from the short MAC header. In this case, (LSBs of)the packet number may be determined from the sequence control number SC,for example, as PN0|PN1=SC).

As described herein, by storing a portion of CCMP information (e.g.,PN2|PN3|PN4|PN5) of the CCMP Header as a Base PN at the receiver (e.g.,obtained through management frame exchange), CCMP header overhead may besubstantially reduced. According to certain aspects, an Octet of a Rsvdfield of the CCMP header may be removed when used with a short MACHeader. Further, the Key ID field of the CCMP header may also be storedat the receiver (and obtained through a management frame exchange) whenit is used with short MAC header. Rekeying can be accomplished bytemporarily using normal frames with a normal MAC header and the currentkey, while a new key is negotiated. When the new key (and Key ID) hasbeen negotiated, it may become the key (and Key ID) that is used for theshort MAC header, and the use of short MAC headers can be resumed.

According to certain, the Sequence Control field of the Short MAC Headermay be used as PN0|PN1 of the of the CCMP header when it is used withshort MAC Header.

The various operations of methods described above may be performed byany suitable means capable of performing the corresponding functions.The means may include various hardware and/or software component(s)and/or module(s), including, but not limited to a circuit, anapplication specific integrated circuit (ASIC), or processor. Generally,where there are operations illustrated in figures, those operations mayhave corresponding counterpart means-plus-function components withsimilar numbering. For example, operations 500 and 600 illustrated inFIGS. 5 and 6 correspond to means 500A and 600A illustrated in FIGS. 5Aand 6A, respectively.

For example, means for transmitting may comprise a transmitter (e.g.,the transmitter unit 222) and/or an antenna(s) 224 of the access point110 illustrated in FIG. 2 or the transmitter 310 and/or antenna(s) 316depicted in FIG. 3. Means for receiving may comprise a receiver (e.g.,the receiver unit 222) and/or an antenna(s) 224 of the access point 110illustrated in FIG. 2 or the receiver 312 and/or antenna(s) 316 depictedin FIG. 3. Means for processing, means for determining, means fordetecting, means for scanning, means for selecting, or means forterminating operation may comprise a processing system, which mayinclude one or more processors, such as the RX data processor 242, theTX data processor 210, and/or the controller 230 of the access point 110illustrated in FIG. 2 or the processor 304 and/or the DSP 320 portrayedin FIG. 3.

As used herein, the term “determining” encompasses a wide variety ofactions. For example, “determining” may include calculating, computing,processing, deriving, investigating, looking up (e.g., looking up in atable, a database or another data structure), ascertaining and the like.Also, “determining” may include receiving (e.g., receiving information),accessing (e.g., accessing data in a memory) and the like. Also,“determining” may include resolving, selecting, choosing, establishingand the like.

As used herein, a phrase referring to “at least one of” a list of itemsrefers to any combination of those items, including single members. Asan example, “at least one of: a, b, or c” is intended to cover a, b, c,a-b, a-c, b-c, and a-b-c.

The various illustrative logical blocks, modules and circuits describedin connection with the present disclosure may be implemented orperformed with a general purpose processor, a digital signal processor(DSP), an application specific integrated circuit (ASIC), a fieldprogrammable gate array (FPGA) or other programmable logic device (PLD),discrete gate or transistor logic, discrete hardware components, or anycombination thereof designed to perform the functions described herein.A general-purpose processor may be a microprocessor, but in thealternative, the processor may be any commercially available processor,controller, microcontroller, or state machine. A processor may also beimplemented as a combination of computing devices, e.g., a combinationof a DSP and a microprocessor, a plurality of microprocessors, one ormore microprocessors in conjunction with a DSP core, or any other suchconfiguration.

The steps of a method or algorithm described in connection with thepresent disclosure may be embodied directly in hardware, in a softwaremodule executed by a processor, or in a combination of the two. Asoftware module may reside in any form of storage medium that is knownin the art. Some examples of storage media that may be used includerandom access memory (RAM), read only memory (ROM), flash memory, EPROMmemory, EEPROM memory, registers, a hard disk, a removable disk, aCD-ROM and so forth. A software module may comprise a singleinstruction, or many instructions, and may be distributed over severaldifferent code segments, among different programs, and across multiplestorage media. A storage medium may be coupled to a processor such thatthe processor can read information from, and write information to, thestorage medium. In the alternative, the storage medium may be integralto the processor.

The methods disclosed herein comprise one or more steps or actions forachieving the described method. The method steps and/or actions may beinterchanged with one another without departing from the scope of theclaims. In other words, unless a specific order of steps or actions isspecified, the order and/or use of specific steps and/or actions may bemodified without departing from the scope of the claims.

The functions described may be implemented in hardware, software,firmware, or any combination thereof. If implemented in hardware, anexample hardware configuration may comprise a processing system in awireless node. The processing system may be implemented with a busarchitecture. The bus may include any number of interconnecting busesand bridges depending on the specific application of the processingsystem and the overall design constraints. The bus may link togethervarious circuits including a processor, machine-readable media, and abus interface. The bus interface may be used to connect a networkadapter, among other things, to the processing system via the bus. Thenetwork adapter may be used to implement the signal processing functionsof the PHY layer. In the case of a user terminal 120 (see FIG. 1), auser interface (e.g., keypad, display, mouse, joystick, etc.) may alsobe connected to the bus. The bus may also link various other circuitssuch as timing sources, peripherals, voltage regulators, powermanagement circuits, and the like, which are well known in the art, andtherefore, will not be described any further.

The processor may be responsible for managing the bus and generalprocessing, including the execution of software stored on themachine-readable media. The processor may be implemented with one ormore general-purpose and/or special-purpose processors. Examples includemicroprocessors, microcontrollers, DSP processors, and other circuitrythat can execute software. Software shall be construed broadly to meaninstructions, data, or any combination thereof, whether referred to assoftware, firmware, middleware, microcode, hardware descriptionlanguage, or otherwise. Machine-readable media may include, by way ofexample, RAM (Random Access Memory), flash memory, ROM (Read OnlyMemory), PROM (Programmable Read-Only Memory), EPROM (ErasableProgrammable Read-Only Memory), EEPROM (Electrically ErasableProgrammable Read-Only Memory), registers, magnetic disks, opticaldisks, hard drives, or any other suitable storage medium, or anycombination thereof. The machine-readable media may be embodied in acomputer-program product. The computer-program product may comprisepackaging materials.

In a hardware implementation, the machine-readable media may be part ofthe processing system separate from the processor. However, as thoseskilled in the art will readily appreciate, the machine-readable media,or any portion thereof, may be external to the processing system. By wayof example, the machine-readable media may include a transmission line,a carrier wave modulated by data, and/or a computer product separatefrom the wireless node, all which may be accessed by the processorthrough the bus interface. Alternatively, or in addition, themachine-readable media, or any portion thereof, may be integrated intothe processor, such as the case may be with cache and/or generalregister files.

The processing system may be configured as a general-purpose processingsystem with one or more microprocessors providing the processorfunctionality and external memory providing at least a portion of themachine-readable media, all linked together with other supportingcircuitry through an external bus architecture. Alternatively, theprocessing system may be implemented with an ASIC (Application SpecificIntegrated Circuit) with the processor, the bus interface, the userinterface in the case of an access terminal), supporting circuitry, andat least a portion of the machine-readable media integrated into asingle chip, or with one or more FPGAs (Field Programmable Gate Arrays),PLDs (Programmable Logic Devices), controllers, state machines, gatedlogic, discrete hardware components, or any other suitable circuitry, orany combination of circuits that can perform the various functionalitydescribed throughout this disclosure. Those skilled in the art willrecognize how best to implement the described functionality for theprocessing system depending on the particular application and theoverall design constraints imposed on the overall system.

The machine-readable media may comprise a number of software modules.The software modules include instructions that, when executed by theprocessor, cause the processing system to perform various functions. Thesoftware modules may include a transmission module and a receivingmodule. Each software module may reside in a single storage device or bedistributed across multiple storage devices. By way of example, asoftware module may be loaded into RAM from a hard drive when atriggering event occurs. During execution of the software module, theprocessor may load some of the instructions into cache to increaseaccess speed. One or more cache lines may then be loaded into a generalregister file for execution by the processor. When referring to thefunctionality of a software module below, it will be understood thatsuch functionality is implemented by the processor when executinginstructions from that software module.

If implemented in software, the functions may be stored or transmittedover as one or more instructions or code on a computer-readable medium.Computer-readable media include both computer storage media andcommunication media including any medium that facilitates transfer of acomputer program from one place to another. A storage medium may be anyavailable medium that can be accessed by a computer. By way of example,and not limitation, such computer-readable media can comprise RAM, ROM,EEPROM, CD-ROM or other optical disk storage, magnetic disk storage orother magnetic storage devices, or any other medium that can be used tocarry or store desired program code in the form of instructions or datastructures and that can be accessed by a computer. Also, any connectionis properly termed a computer-readable medium. For example, if thesoftware is transmitted from a website, server, or other remote sourceusing a coaxial cable, fiber optic cable, twisted pair, digitalsubscriber line (DSL), or wireless technologies such as infrared (IR),radio, and microwave, then the coaxial cable, fiber optic cable, twistedpair, DSL, or wireless technologies such as infrared, radio, andmicrowave are included in the definition of medium. Disk and disc, asused herein, include compact disc (CD), laser disc, optical disc,digital versatile disc (DVD), floppy disk, and Blu-ray® disc where disksusually reproduce data magnetically, while discs reproduce dataoptically with lasers. Thus, in some aspects computer-readable media maycomprise non-transitory computer-readable media (e.g., tangible media).In addition, for other aspects computer-readable media may comprisetransitory computer- readable media (e.g., a signal). Combinations ofthe above should also be included within the scope of computer-readablemedia.

Thus, certain aspects may comprise a computer program product forperforming the operations presented herein. For example, such a computerprogram product may comprise a computer-readable medium havinginstructions stored (and/or encoded) thereon, the instructions beingexecutable by one or more processors to perform the operations describedherein. For certain aspects, the computer program product may includepackaging material.

Further, it should be appreciated that modules and/or other appropriatemeans for performing the methods and techniques described herein can bedownloaded and/or otherwise obtained by a user terminal and/or basestation as applicable. For example, such a device can be coupled to aserver to facilitate the transfer of means for performing the methodsdescribed herein. Alternatively, various methods described herein can beprovided via storage means (e.g., RAM, ROM, a physical storage mediumsuch as a compact disc (CD) or floppy disk, etc.), such that a userterminal and/or base station can obtain the various methods uponcoupling or providing the storage means to the device. Moreover, anyother suitable technique for providing the methods and techniquesdescribed herein to a device can be utilized.

It is to be understood that the claims are not limited to the preciseconfiguration and components illustrated above. Various modifications,changes and variations may be made in the arrangement, operation anddetails of the methods and apparatus described above without departingfrom the scope of the claims.

1. An apparatus for wireless communications, comprising: a processingsystem configured to encode a data field using a set of information; anda transmitter configured to signal, to another apparatus, a portion ofthe set of information and transmit, to the other apparatus, a packetwith the encoded data field, wherein the packet lacks some of the set ofinformation used to encode the data field.
 2. The apparatus of claim 1,wherein the packet comprises a MAC header and an indication that the MACheader comprises a short MAC header having a reduced number of bytesrelative to a normal MAC header.
 3. The apparatus of claim 1, wherein:the set of information used to encode the data field comprises CounterCipher Mode Protocol (CCMP) information; and the transmitter isconfigured to provide the CCMP information used to encode the data fieldto the other apparatus via at least one of a CCMP header of the packetor a CCMP header of a previously transmitted packet.
 4. The apparatus ofclaim 3, wherein the transmitter is configured to: provide a firstportion of the CCMP information used to encode the data field to theother apparatus in a compressed CCMP header contained in the packet; andprovide a second portion of the CCMP information used to encode the datafield to the other apparatus in a full CCMP header, contained in apreviously-received packet, having at least some CCMP information thatis not contained in the compressed CCMP header.
 5. The apparatus ofclaim 3, wherein the transmitter is further configured to signal aportion of the CCMP information via a management frame exchange.
 6. Theapparatus of claim 3, wherein the transmitter is further configured tosignal a portion of the CCMP information via a previously transmittedpacket with a full CCMP header.
 7. The apparatus of claim 1, wherein:the signaled portion of the set of information comprises a first portionof a packet number used to encode the data field, wherein the packetnumber is incremented with each transmission.
 8. The apparatus of claim7, wherein: the packet comprises a CCMP header with a second portion ofthe packet number.
 9. The apparatus of claim 3, wherein the transmitteris further configured to: transmit a subsequent packet with an updatedversion of CCMP information.
 10. The apparatus of claim 1, wherein: thepacket comprises a CCMP header that lacks reserved Bytes.
 11. Theapparatus of claim 1, wherein: the processing system encodes the datafield using a key ID.
 12. The apparatus of claim 11, wherein thetransmitter is configured to transmit the key ID to the other apparatusvia a management frame exchange or a full CCMP header.
 13. An apparatusfor wireless communications, comprising: means for encoding a data fieldusing a set of information; and means for signaling, to anotherapparatus, a portion of the set of information and transmit, to theother apparatus, a packet with the encoded data field, wherein thepacket lacks some of the set of information used to encode the datafield.
 14. The apparatus of claim 13, wherein the packet comprises a MACheader and an indication that the MAC header comprises a short MACheader having a reduced number of bytes relative to a normal MAC header.15. The apparatus of claim 13, wherein: the set of information used toencode the data field comprises Counter Cipher Mode Protocol (CCMP)information; and the means for signaling is configured to provide theCCMP information used to encode the data field to the other apparatusvia at least one of a CCMP header of the packet or a CCMP header of apreviously transmitted packet.
 16. The apparatus of claim 15, whereinthe means for signaling is configured to: provide a first portion of theCCMP information used to encode the data field to the other apparatus ina compressed CCMP header contained in the packet; and provide a secondportion of the CCMP information used to encode the data field to theother apparatus in a full CCMP header, contained in apreviously-received packet, having at least some CCMP information thatis not contained in the compressed CCMP header.
 17. The apparatus ofclaim 15, wherein the means for signaling is further configured tosignal a portion of the CCMP information via a management frameexchange.
 18. The apparatus of claim 15, wherein the means for signalingis further configured to signal a portion of the CCMP information via apreviously transmitted packet with a full CCMP header.
 19. The apparatusof claim 13, wherein: the signaled portion of the set of informationcomprises a first portion of a packet number used to encode the datafield, wherein the packet number is incremented with each transmission.20. The apparatus of claim 19, wherein: the packet comprises a CCMPheader with a second portion of the packet number.
 21. The apparatus ofclaim 15, further comprising: means for transmitting a subsequent packetwith an updated version of CCMP information.
 22. The apparatus of claim13, wherein: the packet comprises a CCMP header that lacks reservedBytes.
 23. The apparatus of claim 13, wherein: the means for encoding isconfigured to encode the data field using a key ID.
 24. The apparatus ofclaim 23, wherein the means for signaling is configured to transmit thekey ID to the other apparatus via a management frame exchange or a fullCCMP header.
 25. A method for wireless communications by an apparatus,comprising: encoding a data field using a set of information; andsignaling, to another apparatus, a portion of the set of information andtransmit, to the other apparatus, a packet with the encoded data field,wherein the packet lacks some of the set of information used to encodethe data field.
 26. The method of claim 25, wherein the packet comprisesa MAC header and an indication that the MAC header comprises a short MACheader having a reduced number of bytes relative to a normal MAC header.27. The method of claim 25, wherein: the set of information used toencode the data field comprises Counter Cipher Mode Protocol (CCMP)information; and the signaling comprises providing the CCMP informationused to encode the data field to the other apparatus via at least one ofa CCMP header of the packet or a CCMP header of a previously transmittedpacket.
 28. The method of claim 27, wherein the signaling comprises:providing a first portion of the CCMP information used to encode thedata field to the other apparatus in a compressed CCMP header containedin the packet; and providing a second portion of the CCMP informationused to encode the data field to the other apparatus in a full CCMPheader, contained in a previously-received packet, having at least someCCMP information that is not contained in the compressed CCMP header.29. The method of claim 27, wherein the signaling comprises signaling aportion of the CCMP information via a management frame exchange.
 30. Themethod of claim 27, wherein the signaling comprises signaling a portionof the CCMP information via a previously transmitted packet with a fullCCMP header.
 31. The method of claim 25, wherein: the signaled portionof the set of information comprises a first portion of a packet numberused to encode the data field, wherein the packet number is incrementedwith each transmission.
 32. The method of claim 31, wherein: the packetcomprises a CCMP header with a second portion of the packet number. 33.The method of claim 27, further comprising: transmitting a subsequentpacket with an updated version of CCMP information.
 34. The method ofclaim 25, wherein: the packet comprises a CCMP header that lacksreserved Bytes.
 35. The method of claim 25, wherein: the encodingcomprises encoding the data field using a key ID.
 36. The method ofclaim 35, wherein the signaling comprises transmitting the key ID to theother apparatus via a management frame exchange or a full CCMP header.37. A computer program product for wireless communications by anapparatus comprising a computer-readable medium having instructionsstored thereon, the instructions executable for: encoding a data fieldusing a set of information; signaling, to another apparatus, a portionof the set of information; and transmitting, to the other apparatus, apacket with the encoded data field, wherein the packet lacks some of theset of information used to encode the data field.
 38. An access point,comprising: at least one antenna; a processing system configured toencode a data field using a set of information; and a transmitterconfigured to signal, via the at least one antenna, to a station, aportion of the set of information and transmit, to the station, a packetwith the encoded data field, wherein the packet lacks some of the set ofinformation used to encode the data field.